// Copyright (c) 2010, SMB SAAS Systems Inc.
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without modification,
// are permitted provided that the following conditions are met:
//
// - Redistributions of source code must  retain  the  above copyright notice, this
//   list of conditions and the following disclaimer.
//
// - Redistributions in binary form  must  reproduce the  above  copyright  notice,
//   this list of conditions  and  the  following  disclaimer in  the documentation
//   and/or other materials provided with the distribution.
//
// - Neither  the  name  of  the  SMB SAAS Systems Inc.  nor   the   names  of  its
//   contributors may be used to endorse or  promote  products  derived  from  this
//   software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING,  BUT  NOT  LIMITED TO, THE IMPLIED
// WARRANTIES  OF  MERCHANTABILITY   AND  FITNESS  FOR  A  PARTICULAR  PURPOSE  ARE
// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
// ANY DIRECT, INDIRECT, INCIDENTAL,  SPECIAL,  EXEMPLARY, OR CONSEQUENTIAL DAMAGES
// (INCLUDING, BUT NOT LIMITED TO,  PROCUREMENT  OF  SUBSTITUTE  GOODS OR SERVICES;
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)  HOWEVER  CAUSED AND ON
// ANY  THEORY  OF  LIABILITY,  WHETHER  IN  CONTRACT,  STRICT  LIABILITY,  OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE)  ARISING  IN  ANY WAY OUT OF THE USE OF THIS
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:2.0.50727.3053
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

// 
// This source code was auto-generated by wsdl, Version=2.0.50727.42.
// 
using dotPanel.Providers.Common;
using dotPanel.Providers.HostedSolution;
using dotPanel.Providers.ResultObjects;

namespace dotPanel.EnterpriseServer {
    using System.Diagnostics;
    using System.Web.Services;
    using System.ComponentModel;
    using System.Web.Services.Protocols;
    using System;
    using System.Xml.Serialization;
    
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Web.Services.WebServiceBindingAttribute(Name="esOCSSoap", Namespace="http://tempuri.org/")]
    public partial class esOCS : Microsoft.Web.Services3.WebServicesClientProtocol {
        
        private System.Threading.SendOrPostCallback CreateOCSUserOperationCompleted;
        
        private System.Threading.SendOrPostCallback DeleteOCSUserOperationCompleted;
        
        private System.Threading.SendOrPostCallback GetOCSUsersPagedOperationCompleted;
        
        private System.Threading.SendOrPostCallback GetOCSUserCountOperationCompleted;
        
        private System.Threading.SendOrPostCallback GetUserGeneralSettingsOperationCompleted;
        
        private System.Threading.SendOrPostCallback SetUserGeneralSettingsOperationCompleted;
        
        /// <remarks/>
        public esOCS() {
            this.Url = "http://localhost/dotPanelEnterpriseServer/esOCS.asmx";
        }
        
        /// <remarks/>
        public event CreateOCSUserCompletedEventHandler CreateOCSUserCompleted;
        
        /// <remarks/>
        public event DeleteOCSUserCompletedEventHandler DeleteOCSUserCompleted;
        
        /// <remarks/>
        public event GetOCSUsersPagedCompletedEventHandler GetOCSUsersPagedCompleted;
        
        /// <remarks/>
        public event GetOCSUserCountCompletedEventHandler GetOCSUserCountCompleted;
        
        /// <remarks/>
        public event GetUserGeneralSettingsCompletedEventHandler GetUserGeneralSettingsCompleted;
        
        /// <remarks/>
        public event SetUserGeneralSettingsCompletedEventHandler SetUserGeneralSettingsCompleted;
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/CreateOCSUser", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public OCSUserResult CreateOCSUser(int itemId, int accountId) {
            object[] results = this.Invoke("CreateOCSUser", new object[] {
                        itemId,
                        accountId});
            return ((OCSUserResult)(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginCreateOCSUser(int itemId, int accountId, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("CreateOCSUser", new object[] {
                        itemId,
                        accountId}, callback, asyncState);
        }
        
        /// <remarks/>
        public OCSUserResult EndCreateOCSUser(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((OCSUserResult)(results[0]));
        }
        
        /// <remarks/>
        public void CreateOCSUserAsync(int itemId, int accountId) {
            this.CreateOCSUserAsync(itemId, accountId, null);
        }
        
        /// <remarks/>
        public void CreateOCSUserAsync(int itemId, int accountId, object userState) {
            if ((this.CreateOCSUserOperationCompleted == null)) {
                this.CreateOCSUserOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCreateOCSUserOperationCompleted);
            }
            this.InvokeAsync("CreateOCSUser", new object[] {
                        itemId,
                        accountId}, this.CreateOCSUserOperationCompleted, userState);
        }
        
        private void OnCreateOCSUserOperationCompleted(object arg) {
            if ((this.CreateOCSUserCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.CreateOCSUserCompleted(this, new CreateOCSUserCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/DeleteOCSUser", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public ResultObject DeleteOCSUser(int itemId, string instanceId) {
            object[] results = this.Invoke("DeleteOCSUser", new object[] {
                        itemId,
                        instanceId});
            return ((ResultObject)(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginDeleteOCSUser(int itemId, string instanceId, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("DeleteOCSUser", new object[] {
                        itemId,
                        instanceId}, callback, asyncState);
        }
        
        /// <remarks/>
        public ResultObject EndDeleteOCSUser(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((ResultObject)(results[0]));
        }
        
        /// <remarks/>
        public void DeleteOCSUserAsync(int itemId, string instanceId) {
            this.DeleteOCSUserAsync(itemId, instanceId, null);
        }
        
        /// <remarks/>
        public void DeleteOCSUserAsync(int itemId, string instanceId, object userState) {
            if ((this.DeleteOCSUserOperationCompleted == null)) {
                this.DeleteOCSUserOperationCompleted = new System.Threading.SendOrPostCallback(this.OnDeleteOCSUserOperationCompleted);
            }
            this.InvokeAsync("DeleteOCSUser", new object[] {
                        itemId,
                        instanceId}, this.DeleteOCSUserOperationCompleted, userState);
        }
        
        private void OnDeleteOCSUserOperationCompleted(object arg) {
            if ((this.DeleteOCSUserCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.DeleteOCSUserCompleted(this, new DeleteOCSUserCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetOCSUsersPaged", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public OCSUsersPagedResult GetOCSUsersPaged(int itemId, string sortColumn, string sortDirection, string name, string email, int startRow, int maximumRows) {
            object[] results = this.Invoke("GetOCSUsersPaged", new object[] {
                        itemId,
                        sortColumn,
                        sortDirection,
                        name,
                        email,
                        startRow,
                        maximumRows});
            return ((OCSUsersPagedResult)(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginGetOCSUsersPaged(int itemId, string sortColumn, string sortDirection, string name, string email, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("GetOCSUsersPaged", new object[] {
                        itemId,
                        sortColumn,
                        sortDirection,
                        name,
                        email,
                        startRow,
                        maximumRows}, callback, asyncState);
        }
        
        /// <remarks/>
        public OCSUsersPagedResult EndGetOCSUsersPaged(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((OCSUsersPagedResult)(results[0]));
        }
        
        /// <remarks/>
        public void GetOCSUsersPagedAsync(int itemId, string sortColumn, string sortDirection, string name, string email, int startRow, int maximumRows) {
            this.GetOCSUsersPagedAsync(itemId, sortColumn, sortDirection, name, email, startRow, maximumRows, null);
        }
        
        /// <remarks/>
        public void GetOCSUsersPagedAsync(int itemId, string sortColumn, string sortDirection, string name, string email, int startRow, int maximumRows, object userState) {
            if ((this.GetOCSUsersPagedOperationCompleted == null)) {
                this.GetOCSUsersPagedOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetOCSUsersPagedOperationCompleted);
            }
            this.InvokeAsync("GetOCSUsersPaged", new object[] {
                        itemId,
                        sortColumn,
                        sortDirection,
                        name,
                        email,
                        startRow,
                        maximumRows}, this.GetOCSUsersPagedOperationCompleted, userState);
        }
        
        private void OnGetOCSUsersPagedOperationCompleted(object arg) {
            if ((this.GetOCSUsersPagedCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetOCSUsersPagedCompleted(this, new GetOCSUsersPagedCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetOCSUserCount", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public IntResult GetOCSUserCount(int itemId, string name, string email) {
            object[] results = this.Invoke("GetOCSUserCount", new object[] {
                        itemId,
                        name,
                        email});
            return ((IntResult)(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginGetOCSUserCount(int itemId, string name, string email, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("GetOCSUserCount", new object[] {
                        itemId,
                        name,
                        email}, callback, asyncState);
        }
        
        /// <remarks/>
        public IntResult EndGetOCSUserCount(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((IntResult)(results[0]));
        }
        
        /// <remarks/>
        public void GetOCSUserCountAsync(int itemId, string name, string email) {
            this.GetOCSUserCountAsync(itemId, name, email, null);
        }
        
        /// <remarks/>
        public void GetOCSUserCountAsync(int itemId, string name, string email, object userState) {
            if ((this.GetOCSUserCountOperationCompleted == null)) {
                this.GetOCSUserCountOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetOCSUserCountOperationCompleted);
            }
            this.InvokeAsync("GetOCSUserCount", new object[] {
                        itemId,
                        name,
                        email}, this.GetOCSUserCountOperationCompleted, userState);
        }
        
        private void OnGetOCSUserCountOperationCompleted(object arg) {
            if ((this.GetOCSUserCountCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetOCSUserCountCompleted(this, new GetOCSUserCountCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetUserGeneralSettings", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public OCSUser GetUserGeneralSettings(int itemId, string instanceId) {
            object[] results = this.Invoke("GetUserGeneralSettings", new object[] {
                        itemId,
                        instanceId});
            return ((OCSUser)(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginGetUserGeneralSettings(int itemId, string instanceId, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("GetUserGeneralSettings", new object[] {
                        itemId,
                        instanceId}, callback, asyncState);
        }
        
        /// <remarks/>
        public OCSUser EndGetUserGeneralSettings(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((OCSUser)(results[0]));
        }
        
        /// <remarks/>
        public void GetUserGeneralSettingsAsync(int itemId, string instanceId) {
            this.GetUserGeneralSettingsAsync(itemId, instanceId, null);
        }
        
        /// <remarks/>
        public void GetUserGeneralSettingsAsync(int itemId, string instanceId, object userState) {
            if ((this.GetUserGeneralSettingsOperationCompleted == null)) {
                this.GetUserGeneralSettingsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetUserGeneralSettingsOperationCompleted);
            }
            this.InvokeAsync("GetUserGeneralSettings", new object[] {
                        itemId,
                        instanceId}, this.GetUserGeneralSettingsOperationCompleted, userState);
        }
        
        private void OnGetUserGeneralSettingsOperationCompleted(object arg) {
            if ((this.GetUserGeneralSettingsCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetUserGeneralSettingsCompleted(this, new GetUserGeneralSettingsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/SetUserGeneralSettings", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void SetUserGeneralSettings(int itemId, string instanceId, bool enabledForFederation, bool enabledForPublicIMConnectivity, bool archiveInternalCommunications, bool archiveFederatedCommunications, bool enabledForEnhancedPresence) {
            this.Invoke("SetUserGeneralSettings", new object[] {
                        itemId,
                        instanceId,
                        enabledForFederation,
                        enabledForPublicIMConnectivity,
                        archiveInternalCommunications,
                        archiveFederatedCommunications,
                        enabledForEnhancedPresence});
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginSetUserGeneralSettings(int itemId, string instanceId, bool enabledForFederation, bool enabledForPublicIMConnectivity, bool archiveInternalCommunications, bool archiveFederatedCommunications, bool enabledForEnhancedPresence, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("SetUserGeneralSettings", new object[] {
                        itemId,
                        instanceId,
                        enabledForFederation,
                        enabledForPublicIMConnectivity,
                        archiveInternalCommunications,
                        archiveFederatedCommunications,
                        enabledForEnhancedPresence}, callback, asyncState);
        }
        
        /// <remarks/>
        public void EndSetUserGeneralSettings(System.IAsyncResult asyncResult) {
            this.EndInvoke(asyncResult);
        }
        
        /// <remarks/>
        public void SetUserGeneralSettingsAsync(int itemId, string instanceId, bool enabledForFederation, bool enabledForPublicIMConnectivity, bool archiveInternalCommunications, bool archiveFederatedCommunications, bool enabledForEnhancedPresence) {
            this.SetUserGeneralSettingsAsync(itemId, instanceId, enabledForFederation, enabledForPublicIMConnectivity, archiveInternalCommunications, archiveFederatedCommunications, enabledForEnhancedPresence, null);
        }
        
        /// <remarks/>
        public void SetUserGeneralSettingsAsync(int itemId, string instanceId, bool enabledForFederation, bool enabledForPublicIMConnectivity, bool archiveInternalCommunications, bool archiveFederatedCommunications, bool enabledForEnhancedPresence, object userState) {
            if ((this.SetUserGeneralSettingsOperationCompleted == null)) {
                this.SetUserGeneralSettingsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSetUserGeneralSettingsOperationCompleted);
            }
            this.InvokeAsync("SetUserGeneralSettings", new object[] {
                        itemId,
                        instanceId,
                        enabledForFederation,
                        enabledForPublicIMConnectivity,
                        archiveInternalCommunications,
                        archiveFederatedCommunications,
                        enabledForEnhancedPresence}, this.SetUserGeneralSettingsOperationCompleted, userState);
        }
        
        private void OnSetUserGeneralSettingsOperationCompleted(object arg) {
            if ((this.SetUserGeneralSettingsCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.SetUserGeneralSettingsCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        public new void CancelAsync(object userState) {
            base.CancelAsync(userState);
        }
    }
    
    
    
    
    
    
    
    
    
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void CreateOCSUserCompletedEventHandler(object sender, CreateOCSUserCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class CreateOCSUserCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal CreateOCSUserCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public OCSUserResult Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((OCSUserResult)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void DeleteOCSUserCompletedEventHandler(object sender, DeleteOCSUserCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class DeleteOCSUserCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal DeleteOCSUserCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public ResultObject Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((ResultObject)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetOCSUsersPagedCompletedEventHandler(object sender, GetOCSUsersPagedCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetOCSUsersPagedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal GetOCSUsersPagedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public OCSUsersPagedResult Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((OCSUsersPagedResult)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetOCSUserCountCompletedEventHandler(object sender, GetOCSUserCountCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetOCSUserCountCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal GetOCSUserCountCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public IntResult Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((IntResult)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetUserGeneralSettingsCompletedEventHandler(object sender, GetUserGeneralSettingsCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetUserGeneralSettingsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal GetUserGeneralSettingsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public OCSUser Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((OCSUser)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void SetUserGeneralSettingsCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);
}
